package com.ycy;

import java.util.Date;
import java.util.Map;
import java.util.StringJoiner;

/**
 * define the task instance model
 */
public class TaskInstModel {
    private String id;

    private String taskDefKey;
    private String taskDefId;
    private String taskType;

    private Date taskStartTime;
    private Date taskEndTime;
    private String taskInstId;
    private String taskName;
    private String taskStatus;
    private String candiType;
    private String candiValue;
    private String doneExecutor;
    private String operateType;
    private String auditReason;
    private String summary;
    private String description;
    private String appName;

    private String approveResult;

    private String subProcessDefKey;
    private String subProcessDefName;

    /**
     * executionId
     */
    private String executionId;

    private Map<String, Object> varsSnapshot;
    //String remark;
    //Date claimTime;
    //String taskUrl;

    private String ccReceiver;

    private String ccReceiverName;

    private String tenantId;

    public String getTenantId() {
        return tenantId;
    }

    public void setTenantId(String tenantId) {
        this.tenantId = tenantId;
    }

    public Map<String, Object> getVarsSnapshot() {
        return varsSnapshot;
    }

    public void setVarsSnapshot(Map<String, Object> varsSnapshot) {
        this.varsSnapshot = varsSnapshot;
    }

    public String getAppName() {
        return appName;
    }

    public void setAppName(String appName) {
        this.appName = appName;
    }

    public String getTaskDefId() {
        return taskDefId;
    }

    public void setTaskDefId(String taskDefId) {
        this.taskDefId = taskDefId;
    }

    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public Date getTaskStartTime() {
        return taskStartTime;
    }

    public void setTaskStartTime(Date taskStartTime) {
        this.taskStartTime = taskStartTime;
    }

    public Date getTaskEndTime() {
        return taskEndTime;
    }

    public void setTaskEndTime(Date taskEndTime) {
        this.taskEndTime = taskEndTime;
    }

    public String getTaskInstId() {
        return taskInstId;
    }

    public void setTaskInstId(String taskInstId) {
        this.taskInstId = taskInstId;
    }

    public String getTaskDefKey() {
        return taskDefKey;
    }

    public void setTaskDefKey(String taskDefKey) {
        this.taskDefKey = taskDefKey;
    }

    public String getTaskName() {
        return taskName;
    }

    public void setTaskName(String taskName) {
        this.taskName = taskName;
    }

    public String getCandiType() {
        return candiType;
    }

    public void setCandiType(String candiType) {
        this.candiType = candiType;
    }

    public String getCandiValue() {
        return candiValue;
    }

    public void setCandiValue(String candiValue) {
        this.candiValue = candiValue;
    }

    public String getTaskStatus() {
        return taskStatus;
    }

    public void setTaskStatus(String taskStatus) {
        this.taskStatus = taskStatus;
    }

    public String getTaskType() {
        return taskType;
    }

    public void setTaskType(String taskType) {
        this.taskType = taskType;
    }

    public String getDoneExecutor() {
        return doneExecutor;
    }

    public void setDoneExecutor(String doneExecutor) {
        this.doneExecutor = doneExecutor;
    }

    public String getOperateType() {
        return operateType;
    }

    public void setOperateType(String operateType) {
        this.operateType = operateType;
    }

    public String getAuditReason() {
        return auditReason;
    }

    public void setAuditReason(String auditReason) {
        this.auditReason = auditReason;
    }

    public String getSummary() {
        return summary;
    }

    public void setSummary(String summary) {
        this.summary = summary;
    }

    public String getDescription() {
        return description;
    }

    public void setDescription(String description) {
        this.description = description;
    }

    public String getApproveResult() {
        return approveResult;
    }

    public void setApproveResult(String approveResult) {
        this.approveResult = approveResult;
    }

    public String getSubProcessDefKey() {
        return subProcessDefKey;
    }

    public void setSubProcessDefKey(String subProcessDefKey) {
        this.subProcessDefKey = subProcessDefKey;
    }

    public String getSubProcessDefName() {
        return subProcessDefName;
    }

    public void setSubProcessDefName(String subProcessDefName) {
        this.subProcessDefName = subProcessDefName;
    }

    public String getExecutionId() {
        return executionId;
    }

    public void setExecutionId(String executionId) {
        this.executionId = executionId;
    }

    public String getCcReceiver() {
        return ccReceiver;
    }

    public void setCcReceiver(String ccReceiver) {
        this.ccReceiver = ccReceiver;
    }

    public String getCcReceiverName() {
        return ccReceiverName;
    }

    public void setCcReceiverName(String ccReceiverName) {
        this.ccReceiverName = ccReceiverName;
    }

    @Override
    public String toString() {
        return new StringJoiner(", ", TaskInstModel.class.getSimpleName() + "[", "]")
                .add("id='" + id + "'")
                .add("taskDefKey='" + taskDefKey + "'")
                .add("taskDefId='" + taskDefId + "'")
                .add("taskType='" + taskType + "'")
                .add("taskStartTime=" + taskStartTime)
                .add("taskEndTime=" + taskEndTime)
                .add("taskInstId='" + taskInstId + "'")
                .add("taskName='" + taskName + "'")
                .add("taskStatus='" + taskStatus + "'")
                .add("candiType='" + candiType + "'")
                .add("candiValue='" + candiValue + "'")
                .add("doneExecutor='" + doneExecutor + "'")
                .add("operateType='" + operateType + "'")
                .add("auditReason='" + auditReason + "'")
                .add("summary='" + summary + "'")
                .add("description='" + description + "'")
                .add("appName='" + appName + "'")
                .add("approveResult='" + approveResult + "'")
                .add("subProcessDefKey='" + subProcessDefKey + "'")
                .add("subProcessDefName='" + subProcessDefName + "'")
                .add("executionId='" + executionId + "'")
                .add("ccReceiver='" + ccReceiver + "'")
                .add("ccReceiverName='" + ccReceiverName + "'")
                .add("varsSnapshot=" + varsSnapshot)
                .add("tenantId=" + tenantId)
                .toString();
    }


}
